package com.tdkj.service.shop;

import com.tdkj.model.shop.BeanGood;
import com.tdkj.model.shop.BeanShelf;
import com.tdkj.service.IBaseService;
import com.tdkj.service.ServiceException;

public interface IBeanGoodService extends IBaseService {

	BeanGood save(BeanGood good);
	
	void update(BeanGood good);
	
	void publish(Long id, Long shelfId) throws ServiceException ;
	
	void unpublish(Long id);
	
	void createRecommend(Long goodId) throws ServiceException;
	
	BeanGood getGoodById(Long goodId);
	
	BeanShelf getDefaultShelfByUserId(Long userId);
	
	void changeAudit(Long id, String auditState);
	
	void changeAudit(Long[] ids, String auditState);
	
	void updateInnerTypeSelected(Long innerTypeId, Long userId, Long[] selectedIds);
	
	void addEvaluateOfBuyer(Long orderItemId, Long buyerId, Long typeId,
			String content);

	void addEvaluateOfSeller(Long orderItemId, Long sellerId, Long typeId,
			String content);

	boolean isBuyerEvaluated(Long orderItemId) ;

	boolean isSellerEvaluated(Long orderItemId) ;
	
	void updateInventory(Long id, Integer increaseOrDecrease);
	
}
